home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 2000 October: Mac OS SDK / Dev.CD Oct 00 SDK1.toast / Development Kits / Mac OS / Macintosh Drag and Drop / Demo Applications / FinderDrag / FinderRegistry.h < prev    next >
Encoding:
C/C++ Source or Header  |  1995-06-09  |  9.6 KB  |  344 lines  |  [TEXT/MPS ]

  1. /*
  2.     File:        FinderRegistry.h
  3.  
  4.     Contains:    Classes, properties and data types used by the Scriptable Finder
  5.  
  6.     Written by:    Francis Stanbach & Greg Anderson
  7.  
  8.     Copyright:    © 1991-4 by Apple Computer, Inc., all rights reserved.
  9. */
  10.  
  11. #ifndef __FINDERREGISTRY__
  12. #define __FINDERREGISTRY__
  13. #define FinderRegistry_h
  14.  
  15. ////////////////////////////////////////
  16. // Gestalt Selector
  17. ////////////////////////////////////////
  18.  
  19. // #define gestaltFinderSelector                'fndr'
  20.  
  21. // #define gestaltFinderCallsAEProcess            2
  22. // #define gestaltOSLCompliantFinder            3
  23.  
  24. ////////////////////////////////////////
  25. // Finder Suite
  26. ////////////////////////////////////////
  27.  
  28. //
  29. // The old Finder Event suite was 'FNDR'
  30. // The new suite is 'fndr'
  31. //
  32. #define kAEFinderSuite            'fndr'
  33.  
  34.  
  35. ////////////////////////////////////////
  36. // Finder Events
  37. ////////////////////////////////////////
  38.  
  39. #define kAECleanUp                'fclu'
  40. #define kAEEject                'ejct'
  41. #define kAEEmpty                'empt'
  42. #define kAEErase                'fera'
  43. #define kAEGestalt                'gstl'
  44. #define kAEPutAway                'ptwy'
  45. #define kAERebuildDesktopDB        'rddb'
  46. #define kAERestart                'rest'
  47. #define kAEShutDown                'shut'
  48. #define kAESnooze                'snoz'                // Go to sleep
  49. #define kAEUpdate                'fupd'
  50.  
  51. ////////////////////////////////////////
  52. // Classes
  53. ////////////////////////////////////////
  54.  
  55. #define cFinder                    cApplication        // the finder object ≈ null
  56.  
  57. #define cDisk                    'cdis'
  58. #define cFolder                    'cfol'
  59. #define cTrash                    'ctrs'
  60. #define cDesktop                'cdsk'
  61. #define cContainer                'ctnr'                // Disks, folders, trashes, desktops, suitcases
  62. #define cSharableContainer        'sctr'                // Disks and folders
  63. #define cSuitcase                'stcs'
  64. #define cFontSuitcase            'fsut'
  65. #define cAccessorySuitcase        'dsut'
  66.  
  67. #define cAliasFile                'alia'
  68.  
  69. #define cApplicationFile        'appf'
  70. #define cDocumentFile            'docf'
  71. #define cControlPanel            'ccdv'
  72. #define cDeskAccessoryFile        'dafi'
  73. #define cSoundFile                'sndf'
  74. #define cFontFile                'fntf'
  75.  
  76. #define cDemiWindow                'dwnd'                // Content space:  includes desktop window & other windows
  77. #define cContainerWindow        'cwnd'
  78. #define cInfoWindow                'iwnd'
  79. #define cSharingWindow            'swnd'
  80. #define cStatusWindow            'qwnd'                // Empty trash progress, 'copy' window
  81.  
  82. #define cPrivilege                'priv'
  83. #define cGestalt                'cgst'
  84. #define cProcess                'prcs'                // Information about a process running on this machine (like cApplication)
  85. #define cAccessoryProcess        'pcda'
  86. #define cApplicationProcess        'pcap'
  87.  
  88. #define cEntireContents            'ects'
  89.  
  90. #define cIconFamily                'ifam'
  91.  
  92. //
  93. // User and groups:
  94. //
  95. #define cUser                    'cuse'
  96. #define cGroup                    'sgrp'
  97.  
  98. ////////////////////////////////////////
  99. // Properties
  100. ////////////////////////////////////////
  101.  
  102. //
  103. // Properties of cObject:
  104. //
  105. #define pComment                'comt'
  106. #define pContainer                cContainer            // The container the object is stored in
  107. #define pCreationDate            'crtd'
  108. #define pDemiWindow                cDemiWindow
  109. #define pDisk                    cDisk                // the disk the object is stored on
  110. #define pIconBitmap                'iimg'
  111. #define pInformationWindow        cInfoWindow            // Get info window
  112. #define pStatusWindow            cStatusWindow        // Status window (copy, empty trash, rebuild desktop database)
  113. #define pIsLocked                'islk'
  114. #define pIsSelected                'issl'
  115. #define pKind                    'kind'
  116. #define pModificationDate        'modd'
  117. #define pPhysicalSize            'phys'
  118. #define pPosition                'posn'
  119. #define pSize                    pPointSize            // both are called "Size" in their respective terminologies, so they must have the same four-character code
  120. #define pWindow                    cWindow
  121.  
  122. //
  123. // Properties of cFile:
  124. //
  125. #define pCreatorType            'fcrt'
  126. #define pFileType                'fitp'
  127. #define pVersion2                'ver2'
  128.  
  129. //
  130. // Properties of cAliasFile:
  131. //
  132. #define pOriginalItem            'orig'                // Item pointed to by alias
  133.  
  134. //
  135. // Properties of cApplicationFile:
  136. //
  137. #define pAppPartition            'appt'
  138. #define pSuggestedAppPartition    'sprt'
  139. #define pMinAppPartition        'mprt'
  140.  
  141. //
  142. // Properties of cContainer:
  143. //
  144. #define pContainerWindow        cContainerWindow    // Window that contains children
  145. #define pEntireContents            cEntireContents
  146. #define pLabelIndex                'labi'
  147. #define pExpanded                'pexp'                // Same as kAEExpanded
  148. #define pExpandable                'pexa'
  149. #define pCompletelyExpanded        'pexc'
  150. #define pSharingWindow            cSharingWindow        // Sharing window
  151. #define pView                    'pvew'
  152. #define pPreviousView            'svew'                // The last listwindow (non-icon) view
  153.  
  154. #define pSharing                'shar'
  155. #define pSharingProtection        'spro'
  156. #define pExported                'sexp'
  157. #define pMounted                'smou'
  158. #define pInheritedPrivileges    'iprv'                // ◊◊◊new:  "Same as enclosing" checkbox
  159. #define pOwner                    'sown'
  160. #define pGroup                    cGroup
  161. #define pOwnerPrivileges        'ownr'
  162. #define pGroupPrivileges        'gppr'
  163. #define pGuestPrivileges        'gstp'
  164.  
  165. //
  166. // Properties of cDisk:
  167. //
  168. #define pCapacity                'capa'
  169. #define pEjectable                'isej'
  170. #define pFreeSpace                'frsp'
  171. #define pLocal                    'isrv'
  172. #define pIsStartup                'istd'
  173.  
  174. //
  175. // Properties of cDesktop:
  176. //
  177. #define pTrash                    'trsh'                // Can't use cTrash, and pTrash must == kTrashFolderType
  178. #define pStartupDisk            'sdsk'
  179.  
  180. //
  181. // Properties of cTrash:
  182. //
  183. #define pWarnOnEmpty            'warn'
  184.  
  185. //
  186. // Properties of cFinder / cApplication:
  187. //
  188. #define pAppleMenuItemsFolder    'amnu'                // kAppleMenuFolderType
  189. #define pControlPanelsFolder    'ctrl'                // kControlPanelFolderType
  190. #define pDesktop                'desk'                // Can't use cDesktop, and pDesktop must == kDesktopFolderType
  191. #define pExtensionsFolder        'extn'                // kExtensionFolderType
  192. #define pFileShareOn            'fshr'
  193. #define pFileShareStartingUp    'fsup'
  194. #define pFontsFolder            'ffnt'
  195.  
  196. #define pLargestFreeBlock        'mfre'
  197. #define pPreferencesFolder        'pref'                // kPreferencesFolderType
  198. #define pAboutMacintosh            'abbx'                // Open this to get 'About this Macintosh' window
  199. #define pShortcuts                'scut'                // Finder shortcuts in help menu
  200. #define pShutdownFolder            'shdf'
  201. #define pStartupItemsFolder        'strt'                // kStartupFolderType
  202. #define pSystemFolder            'macs'                // kSystemFolderType
  203. #define pTemporaryFolder        'temp'                // kTemporaryFolderType
  204. #define pTimerItemsFolder        'timf'
  205. #define pViewPreferences        'pvwp'                // Finder view preferences ("Views" control panel)
  206.  
  207. //
  208. // View preferences properties
  209. //
  210. #define pViewFont                'vfnt'
  211. #define pViewFontSize            'vfsz'
  212. #define pGridIcons                'fgrd'
  213. #define pListViewIconSize        'lvis'
  214. #define pShowComment            'scom'
  215. #define pShowDate                'sdat'
  216. #define pShowDiskInfo            'sdin'
  217. #define pShowFolderSize            'sfsz'
  218. #define pShowKind                'sknd'
  219. #define pShowLabel                'slbl'
  220. #define pShowSize                'ssiz'
  221. #define pShowVersion            'svrs'
  222. #define pStaggerIcons            'fstg'
  223.  
  224. //
  225. // Other control panel properties
  226. //
  227. #define pMouseSpeed                'mspd'
  228. #define pMouseClick                'mclk'
  229. #define pKeyboardDelay            'kydl'
  230. #define pKeyboardRate            'kyrt'
  231. #define pBackgroundPattern        'bkpt'
  232. #define pHighlightColor            'hclr'
  233. #define pMonitorBitDepth        'btst'
  234. #define pSoundVolume            'sdvl'
  235. #define pSoundChange            'sdch'
  236. #define pMenuBlink                'mnbk'
  237. #define pCaretBlink                'crtb'
  238.  
  239. //
  240. // Properties of cPrivilegs
  241. //
  242. #define pSeeFiles                'prvr'
  243. #define pSeeFolders                'prvs'
  244. #define pMakeChanges            'prvw'
  245.  
  246. //
  247. // Properties of cProcess
  248. //
  249. #define pApplicationFile        cApplicationFile
  250.  
  251. #define pDeskAccessoryFile        cDeskAccessoryFile
  252. #define pIsScriptable            'isab'
  253. #define pLocalAndRemoteEvents    'revt'
  254. #define pPartitionSpaceUsed        'pusd'
  255.  
  256. #define pFolder                    cFolder
  257. #define pObject                    cObject
  258. #define pSharableContainer        cSharableContainer
  259. #define pSuitcase                cSuitcase
  260. #define pFontSuitcase            cFontSuitcase
  261. #define pAccessorySuitcase        cAccessorySuitcase
  262.  
  263.  
  264. ////////////////////////////////////////
  265. // Enumerations defined by the Finder
  266. ////////////////////////////////////////
  267.  
  268. #define enumViewBy                'vwby'
  269.  
  270. #define pSmallIcon                'smic'
  271.  
  272. #define enumGestalt                'gsen'
  273.  
  274. #define    enumConflicts            'cflc'
  275. #define enumExistingItems        'exsi'
  276.  
  277. ////////////////////////////////////////
  278. // Types defined by the Finder
  279. ////////////////////////////////////////
  280.  
  281. #define typeIconFamily            cIconFamily            // An AEList of typeIconAndMask, type8BitIcon, & c.
  282. #define typeIconAndMask            'ICN#'
  283. #define type8BitIcon            'icl8'
  284. #define type4BitIcon            'icl4'
  285. #define typeSmallIconAndMask    'ics#'
  286. #define typeSmall8BitIcon        'ics8'
  287. #define typeSmall4BitIcon        'ics4'
  288.  
  289. ////////////////////////////////////////
  290. // Keywords defined by the Finder
  291. ////////////////////////////////////////
  292.  
  293. #define keyIconAndMask            'ICN#'
  294. #define key8BitIcon                'icl8'
  295. #define key4BitIcon                'icl4'
  296. #define keySmallIconAndMask        'ics#'
  297. #define keySmall8BitIcon        'ics8'
  298. #define keySmall4BitIcon        'ics4'
  299.  
  300. #define keyAEUsing                'usin'
  301. #define keyAEReplacing            'alrp'
  302.  
  303. ////////////////////////////////////////
  304. // New prepositions used by the Finder
  305. ////////////////////////////////////////
  306.  
  307. #define keyASPrepositionHas        'has '
  308. #define keyAll                    'kyal'
  309. #define keyOldFinderItems        'fsel'
  310.  
  311. ////////////////////////////////////////
  312. // New key forms used by the Finder
  313. ////////////////////////////////////////
  314.  
  315. #define formAlias                typeAlias
  316. #define formCreator                pCreator
  317.  
  318.  
  319. ////////////////////////////////////////
  320. // Finder error codes
  321. ////////////////////////////////////////
  322.  
  323. #define errFinderIsBusy                    -15260
  324. #define errFinderWindowNotOpen            -15261
  325. #define errFinderCannotPutAway            -15262
  326. #define errFinderWindowMustBeIconView    -15263        // RequireWindowInIconView
  327. #define errFinderWindowMustBeListView    -15264        // RequireWindowInListView
  328. #define errFinderCantMoveToDestination    -15265
  329. #define errFinderCantMoveSource            -15266
  330. #define errFinderCantOverwrite            -15267
  331. #define errFinderIncestuousMove            -15268        // Could just use errFinderCantMoveSource
  332. #define errFinderCantMoveToAncestor        -15269        // Could also use errFinderCantMoveSource
  333. #define errFinderCantUseTrashedItems    -15270
  334. #define errFinderItemAlreadyInDest        -15271        // Move from folder A to folder A
  335. #define errFinderUnknownUser            -15272        // Includes unknown group
  336. #define errFinderSharePointsCantInherit    -15273
  337.  
  338. #define errFinderBoundsWrong            -15278
  339. #define errAEValueOutOfRange            -15279
  340.  
  341. #define errFinderLastReserved            -15279
  342.  
  343. #endif
  344.